바이브 코딩

  • 2025-03-20

Andrej Karpathy가 2025년 2월 3일에 고안한 용어:

There’s a new kind of coding I call “vibe coding”, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It’s possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like “decrease the padding on the sidebar by half” because I’m too lazy to find it. I “Accept All” always, I don’t read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it. The code grows beyond my usual comprehension, I’d have to really read through it for a while. Sometimes the LLMs can’t fix a bug so I just work around it or ask for random changes until it goes away. It’s not too bad for throwaway weekend projects, but still quite amusing. I’m building a project or webapp, but it’s not really coding - I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works.1

See also

메모

2025년 3월 12일에 겪은 일.

AI로 바이브 코딩하다가 시간을 어마어마하게 낭비했다. 제일 큰 원인은 상대적으로 생소한 분야였다는 점. 내가 잘 모르니 AI에게 똑바로 시키지 못하고, 똑바로 못시키니 AI가 좋은 결과를 못 만들고, 그런데 또 내가 잘 모르니 결과가 잘못되었다는 걸 잘 알아차리지도 못하면서 점점 산으로 갔다.

이 상태로 AI와 몇 번 더 대화를 주고 받으며 코드를 고치면 점점 산으로 간다. AI는 문제가 생기면 문제가 된 코드를 바꾸기보다는 문제를 틀어 막기 위해 또다른 코드를 추가하는 경우가 종종 있다. 결국 코드는 점점 더 복잡해지고 AI는 점점 더 많은 실수를 한다.

바이브 코딩 강령(?)에 따라 다 지우고 처음부터 다시 시작해도, 내가 그 분야에 생소하다는 사실 자체는 바뀌지 않기 때문에 마찬가지 수렁에 반복적으로 빠졌다. 그렇게 4시간을 보낸 뒤에 잠시 쉬었다가 마음을 다잡고 전략을 바꿈.

약 1시간 정도 시간을 내서 최소한의 공부를 하여 주요 개념과 용어를 파악했다(물론 AI의 도움을 받음). 그러고나서 다시 시작했더니 약 30분 만에 깔끔하게 해결되었다.

  • 교훈1. 해당 코드가 ML 관련 코드였어서 한 번 실행에 10분 정도 걸렸던 점이 큰 문제 중 하나였다. 한 번 시행착오를 겪는 피드백 루프가 10분이면 지나치게 길다. 데이터를 샘플링해서 작게 만들고, 임시로 n_epoch를 줄이는 등 피드백 루프를 30초 이내로 줄이는 작업을 미리 했어야 했다.
  • 교훈2. 아무리 바이브 코딩을 하더라도 시키는 인간이 최소한으로는 알아야 한다. 반성 ㅜㅜ “내가 이 분야를 너무 모르는구나”를 좀 더 빨리 알라차리려면 어떻게 하면 좋을까? 고민 필요.

2025년 3월 14일에 추가. 좀 더 생각해보니 위 결론은 너무 소극적이다. 모르는 걸 시키고 그 과정에서 삽질을 하고 결과물이 안나오면 “실패”인 것 맞는데, 실패 중에도 상대적으로 값진 실패가 있다. 얼마나 빨리 실패했는가, 과정에서 얼마나 배웠는가. 이렇게 두 가지가 중요. 이런 관점에서 좀 더 고민해보면 좋겠다.

Articles

Footnotes

  1. x.com/karpathy/status/1886192184808149383

2025 © ak